Dynamic adjustment of a presentation area

ABSTRACT

This disclosure describes a system for presenting items to a user at a presentation area within a materials handling facility. In some instances, a predicted items list that identifies items that are likely to be picked by a user are determined and, when the user arrives at the materials handling facility, those predicted items are presented to the user for selection. For example, predicted items may be determined and inventory holders that contain the predicted items may be routed to a presentation area and positioned for presentation to the user. The user may browse the presented items and pick the items they desire.

PRIORITY CLAIM

This application is a Continuation of U.S. patent application Ser. No.16/414,653, filed May 16, 2019, and titled “Dynamic Adjustment of APresentation Area,” which is a Divisional of U.S. patent applicationSer. No. 14/311,617, filed Jun. 23, 2014, titled “Presenting PredictedItems to Users,” and issued as U.S. Pat. No. 10,303,133 on May 28, 2019,the contents of both of which are herein incorporated by reference.

BACKGROUND

Retailers, wholesalers, and other product distributors typicallymaintain an inventory of various items that may be ordered, purchased,leased, borrowed, rented, viewed, etc., by clients or customers. Forexample, an e-commerce website may maintain inventory in a fulfillmentcenter. When a customer orders an item, the item is picked frominventory, routed to a packing station, packed and shipped to thecustomer. Likewise, physical stores maintain inventory in customeraccessible areas (e.g., shopping area) and customers can locate itemsfrom within the store, pick the items from inventory and take them to acashier for purchase, rental, etc.

Many of those physical stores also maintain inventory in a storage area,or fulfillment centers, that can be used to replenish inventory locatedin the shopping areas and/or to satisfy orders for items that are placedthrough other channels (e.g., e-commerce). Other examples of entitiesthat maintain inventory include libraries, museums, rental centers, andthe like. In each instance, the user (e.g., picker, user, customer) mustfirst locate the item and retrieve the item for use and/or purchase.

BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description is set forth with reference to the accompanyingfigures. In the figures, the left-most digit(s) of a reference numberidentifies the figure in which the reference number first appears. Theuse of the same reference numbers in different figures indicates similaror identical items or features.

FIG. 1 is a block diagram illustrating a materials handling facility,according to some implementations.

FIG. 2 is a block diagram illustrating additional details of a materialshandling facility, according to some implementations.

FIG. 3 is a block diagram illustrating an overhead view of a materialshandling facility, according to some implementations.

FIG. 4 is a block diagram illustrating additional details of a materialshandling facility, according to some implementations.

FIG. 5 is a block diagram illustrating components of a materialshandling facility, according to some implementations.

FIG. 6 is a flow diagram of an example predicted items presentationprocess, according to some implementations.

FIG. 7 is a flow diagram of an example dynamic presentation areaprocess, according to some implementations.

FIG. 8 is a flow diagram of an example requested item delivery process,according to some implementations.

FIG. 9 is a block diagram of an illustrative implementation of a serversystem that may be used with various implementations, such as the remotecomputing resources.

While implementations are described herein by way of example, thoseskilled in the art will recognize that the implementations are notlimited to the examples or drawings described. It should be understoodthat the drawings and detailed description thereto are not intended tolimit implementations to the particular form disclosed but, on thecontrary, the intention is to cover all modifications, equivalents andalternatives falling within the spirit and scope as defined by theappended claims. The headings used herein are for organizationalpurposes only and are not meant to be used to limit the scope of thedescription or the claims. As used throughout this application, the word“may” is used in a permissive sense (i.e., meaning having the potentialto), rather than the mandatory sense (i.e., meaning must). Similarly,the words “include,” “including,” and “includes” mean including, but notlimited to.

DETAILED DESCRIPTION

This disclosure describes a system for presenting items at a materialshandling facility. In some instances, a predicted items list thatidentifies items that are likely to be picked by a user are determinedand, when the user arrives at the materials handling facility, thoseitems are presented to the user for selection. For example, items likelyto be picked by a user may be determined and inventory holders thatcontain those items may be retrieved from storage areas using shuttlesand transitioned to a presentation area for presentation to the user.Presentation areas may be configured, for example, as aisles of bins.Each bin may have one or more shelves and each shelf may have one ormore presentation locations. Likewise, each presentation location may beconfigured to hold one or more inventory holders and each inventoryholder may be configured to hold one or more items of inventory.

The presentation area for a particular user may vary in size based onthe number and/or size of predicted items to be presented to the user.For example, the presentation area may be a single presentation locationif only a few predicted items are to be presented to a user. Incomparison, the presentation area may be multiple aisles if a largenumber of predicted items are to be presented to a user.

In some implementations, the presentation area may be dynamicallyconfigured, regardless of user. For example, a presentation area may beconfigured or reconfigured based on the time of day, day of week,season, holidays, weather, users in the materials handling facility,etc. For example, if a national holiday is scheduled for an upcomingweekend and users typically pick a particular type of item for thatholiday (e.g., flags, charcoal, hats), the presentation area may bedynamically configured to include items often picked by users inpreparation for the national holiday.

In still other locations, a presentation area may be configured based onvendor agreements. For example, vendors may have an agreement with thematerials handling facility to place items at a particular locationwithin the materials handling facility based on one or more factors.Factors may include, for example, time of day, day of week, season,holidays, weather, users in the materials handling facility, etc. Forexample, Vendor 1 may have an agreement with the materials handlingfacility to present Vendor 1 items at a front of the materials handlingfacility from 8:00 am-3:00 pm on Saturdays. Vendor 2 may have anagreement with the materials handling facility to present Vendor 2 itemsat the same presentation area (front of the materials handling facility)from 3:00 pm-10:00 pm on Saturdays. As the adjustment criteria aresatisfied, the appropriate inventory holders are positioned forpresentation at the presentation area according to the adjustmentcriteria.

Regardless of size and/or configuration of a presentation area for auser, the user may pick items they desire from the presented inventoryholders. When a user picks an item from an inventory holder, the pickeditem is determined and an item identifier representative of the item isadded to an item identifier list associated with the user. If the userplaces the item onto the inventory holder (or any other location withinthe facility), the placed item is determined and the corresponding itemidentifier removed from the item identifier list associated with theuser.

In some implementations, a separate item presentation location may bepositioned within the facility for presenting items requested by theuser that are retrieved from another location (e.g., storage) within thefacility. For example, if a user desires an item that is either notpresented within the facility or not located near the user, the user mayrequest that the item be presented. An inventory holder containing theitem may be retrieved, transitioned to a nearby presentation location,and the item presented to the user.

In some implementations, a presentation area may include items formultiple users. For example, if two or more users have similar itemsidentified on respective predicted items lists, the predicted items fromeach user's predicted items list may be positioned at a presentationarea and each user may browse and pick items from the presentation area.

In some implementations, in addition to presenting items identified on apredicted items list, supplementary items may be included on a presentedinventory holder for presentation to the user. Supplementary items mayinclude, for example, items that are often bought with items on thepredicted items list, promotional items, advertised items, free sampleitems, etc. The user may pick a predicted item and/or a supplementaryitem.

In some implementations, the inventory management system may monitor thematerials handling facility and detect the arrival of a user. Forexample, if the inventory management system knows the identity of theuser, the license plate of the user's car, or other identifyinginformation, it may detect when the user has arrived at the materialshandling facility. In other implementations, the user may be identifiedas the user enters the materials handling facility. For example, one ormore images of the user may be captured and processed using facialrecognition to identify the user. Alternatively, or in addition thereto,the user may provide identifying information, such as a user name,badge, identifier, biometric information, etc.

Upon detecting the arrival, the inventory management system may initiatethe consolidation and presentation of predicted items at a presentationarea. Consolidation may be initiated by the inventory management systemgenerating and/or issuing instructions to one or more shuttles toretrieve inventory holders containing the predicted items and toposition those inventory holders at presentation locations within adetermined presentation area. Likewise, if a presentation locationalready includes an inventory holder, the inventory management systemmay send instructions to remove the currently positioned inventoryholder so that the inventory holder containing the predicted items canbe positioned for presentation to the user.

As used herein, a materials handling facility may include, but is notlimited to, warehouses, distribution centers, cross-docking facilities,order fulfillment facilities, packaging facilities, shipping facilities,rental facilities, libraries, retail stores, wholesale stores, museums,or other facilities or combinations of facilities for performing one ormore functions of material (inventory) handling.

An implementation of a materials handling facility configured to fulfillitems selected by a user is illustrated in FIG. 1 . As shown, amaterials handling facility 100 includes a receiving area 120, a storagearea 130 configured to store an arbitrary number of inventory items135A-135N, and one or more buffer areas 140 configured to temporarilyhold items picked for delivery to a user. The materials handlingfacility may also include a presentation area 160 (described in furtherdetail below). The arrangement of the various areas within materialshandling facility 100 is depicted functionally rather thanschematically. For example, in some implementations, multiple differentreceiving areas 120, storage areas 130, buffer areas 140, and/orpresentation areas 160 may be interspersed rather than segregated.Likewise, one or more of the areas may be combined. For example, asillustrated in FIG. 2 , the presentation area 160 and the storage area130 may be combined into a single area.

Additionally, the materials handling facility 100 includes an inventorymanagement system 150 configured to interact with each of receiving area120, storage area 130, buffer area 140, presentation area 160 and/orusers within the materials handling facility 100.

The materials handling facility 100 may be configured to receivedifferent kinds of inventory items 135 from various suppliers and tostore them until a user orders or retrieves one or more of the items.The general flow of items through materials handling facility 100 isindicated using arrows. Specifically, as illustrated in this example,items 135 may be received from one or more suppliers, such asmanufacturers, distributors, wholesalers, etc., at receiving area 120.In various implementations, items 135 may include merchandise,commodities, perishables, or any suitable type of item depending on thenature of the enterprise that operates the materials handling facility100.

Upon being received from a supplier at receiving area 120, items 135 maybe prepared for storage. For example, in some implementations, items 135may be unpacked or otherwise rearranged, and the inventory managementsystem 150 (which, as described below, may include one or more softwareapplications executing on a computer system) may be updated to reflectthe type, quantity, condition, cost, location or any other suitableparameters with respect to newly received items 135. It is noted thatitems 135 may be stocked, managed or dispensed in terms of countable,individual units or multiples of units, such as packages, cartons,crates, pallets or other suitable aggregations. Alternatively, someitems 135, such as bulk products, commodities, etc., may be stored incontinuous or arbitrarily divisible amounts that may not be inherentlyorganized into countable units. Such items 135 may be managed in termsof measurable quantities such as units of length, area, volume, weight,time duration or other dimensional properties characterized by units ofmeasurement. Generally speaking, a quantity of an item 135 may refer toeither a countable number of individual or aggregate units of an item135 or a measurable amount of an item 135, as appropriate.

After arriving through receiving area 120, items 135 may be placed oninventory holders and stored within storage area 130. In someimplementations, like items 135 may be stored together in bins, onshelves or via other suitable storage mechanisms, such that all items135 of a given kind are stored in one storage location or inventoryholder within the storage area 130. In other implementations, like items135 may be stored in different locations and/or multiple locations. Forexample, to optimize retrieval of certain items 135 having high turnoverwithin a large physical facility, those items 135 may be stored inseveral different storage locations to reduce congestion that mightoccur at a single point of storage. In some implementations, some itemsmay also be stored and accessible for retrieval by a user within thepresentation area 160. In general, the inventory management system 150may maintain a mapping or location information identifying where withinthe materials handling facility each item is stored. Each inventory itemmay be associated with the corresponding location in which it is storedand the association may be maintained in an inventory data store 915(FIG. 9 ) accessible by the inventory management system 150.

When items on a predicted items list are to be retrieved and presentedto a user for selection, an inventory holder that contains one or moreof the predicted items may be “picked” from storage locations within thestorage area 130. For example, in one implementation, a shuttle, such asa shuttle available from Opex Shuttles, Inc., may receive instructionsto pick an inventory holder from the storage area 130 and deliver theinventory holder to a presentation area 160.

As discussed in more detail below, a user may select items while in thematerials handling facility 100, be presented predicted items determinedto likely be of interest to the user, and/or pre-order or confirm itemsidentified on the predicted items list and/or remove an item from thepredicted items list. In some instances, predicted items may bedetermined based on past purchases or picks by the user. For example, ifa user picks paper towels every time they are at the materials handlingfacility, that recurring behavior may be detected and paper towels maybe added to the predicted items list. The next time the user arrives atthe materials handling facility, an inventory holder that includes papertowels may automatically be presented to the user for selection.

While in the materials handling facility, the user may participate in aselection process, selecting one or more items that the user desires toremove from the materials handling facility. For example, the user maybe selecting items for purchase, rental, and/or to borrow that the userdesires to take with them when they leave the materials handlingfacility. As the user selects the items, an identifier associated withthe items may be added to an item identifier list associated with theuser.

FIG. 2 is a block diagram illustrating additional details of a materialshandling facility, according to some implementations. Illustrated inFIG. 2 is a front view of a presentation area 200 and an adjacentstorage area 210. In this example, the presentation area is a bin withfour shelves 202, 204, 206, 208. As shown, each shelf 202-208 isconfigured to hold multiple inventory holders 218 at respectivepresentation locations, and each inventory holder 218 is configured tohold multiple items 220 of inventory. The inventory holder may be anyconfiguration that is capable of holding and/or presenting items. Forexample, as illustrated in FIG. 2 , the inventory holder 218 is a flattray with small upward extending edges to aid in holding the inventoryon the tray as it is moved and/or presented. In other implementations,the inventory holder 218 may have other configurations. For example, theinventory holder may have recesses or slots into which inventory isplaced for presentation and to secure the inventory during movement. Instill other implementations, the inventory holder may be a completelyflat tray, may be a container or tote with sides, etc. Likewise, theinventory holder may be formed of any type of material of sufficientstrength to hold inventory and be transported. For example, theinventory holder may be formed from plastic, steel, rubber, polymer, anycombination thereof, and/or of other material(s).

In this example, the items on shelves 202-208 are presented to a userfor selection and a user may pick one or more items 220 from thepresentation area 200. Each presentation location may be configured withone or more conveyers, rollers, guides, or other mechanism to receiveand/or provide inventory holders. For example, one or more shuttles (notshown) may operate behind the presentation area 200 to deliver and/orretrieve inventory holders 218 from the presentation locations. In oneimplementation, a shuttle may position behind a presentation location,retrieve an inventory holder from the presentation location and/orposition a different inventory holder at the presentation location. Inone configuration, the shuttle may include a conveyor belt that whenactivated and rotated in a first direction causes the inventory holderto expel from the shuttle and move onto the presentation location. In asimilar fashion, when the conveyor is activated in the second directionit may engage with and remove the inventory holder from the presentationlocation.

In some implementations, the presentation locations may also include aremovable barrier to allow access to the inventory presented at thepresentation location. For example, when an inventory holder is beingplaced at and/or removed from a presentation location, the barrier maybe raised, thereby preventing access to the inventory, the inventoryholder and/or the presentation location while the inventory holder isbeing positioned. When an inventory holder has been positioned at thepresentation location, the barrier may be removed to enable user accessto the inventory located on the inventory holder.

Returning to FIG. 2 , the storage area 210, in this example, ispositioned vertically above the presentation area 200. The storage areamay include any number of shelves, such as shelves 212, 214, 216, eachshelf may include any number of storage locations and each storagelocation may store one or more inventory holders 218 that contain one ormore items 220 of inventory. In one implementation, as illustrated bythe dashed lines, the inventory located in the storage area 210 may notbe accessible and/or viewable by users.

As discussed further below, inventory stored in storage area 210 may beretrieved by shuttles (not shown), transitioned to a presentation areaand presented to a user for selection. In some implementations, items220 of inventory may be stored in storage areas adjacent to thepresentation area where the item is typically presented for userselection. In other implementations, inventory may be randomly stored indifferent storage areas 210. In still other implementations, items thatare picked more frequently by users (a.k.a., high velocity items) may bestored at storage areas that are central to the facility so that theitems can be picked and delivered quickly to different presentationareas within the facility.

While the example block diagram illustrated in FIG. 2 shows apresentation area with four shelves 202-208 and an adjacent storage area210 that is positioned above the presentation area 200 that includesthree shelves 212-216, in other implementations other configurations maybe utilized. For example, the presentation area 200 may includeadditional or fewer shelves, and the shelves may include additional orfewer presentation locations. Likewise, the storage area 210 may includeadditional or fewer shelves for storing items. In some implementations,the storage area may be positioned above, behind and/or below thepresentation area.

FIG. 3 is a block diagram illustrating an overhead or top-down view of amaterials handling facility, according to some implementations. Asillustrated, there are eight presentation areas 300, 302, 304, 306, 308,310, 312, 314. As discussed above, the presentation areas may alsoinclude adjacent (e.g., above, below, behind) storage areas. In thisexample, the storage areas are above and/or below the presentation areasand thus not visible from the top-down view. The presentation areas arepositioned to establish aisles 316, 318, 320, 322, 324, 326, 328 whereusers 330 may move about the materials handling facility picking itemsfrom the presentation areas. Likewise, the presentation areas 300-314are also positioned to establish shuttle areas 332, 334, 336, 338 aboutwhich one or more shuttles 340 may move to transition inventory holdersto different presentation locations and/or storage locations. In someimplementations, the shuttles may move horizontally and/or verticallyvia a series of rails and/or tracks mounted to the back of thepresentation areas and/or storage areas. Likewise, in someimplementations, the shuttle areas may be interconnected via overheadconnectors 342, 344, 346, 348 to enable movement of the shuttles betweendifferent presentation areas and/or storage areas within the materialshandling facility.

The inventory management system may communicate with the shuttles 340,the presentation areas 300-314 and/or the respective presentationlocations and/or storage locations via a network 350 to provideinstructions to the various components for moving items of inventory forstorage and/or presentation. For example, the inventory managementsystem 150 may provide instructions to one or more shuttles 340 toretrieve inventory holders from various storage locations, to transitionthose inventory holders to respective presentation locations within apresentation area, such as presentation area 300, and position therespective inventory holders at the presentation locations forpresentation to a user.

In some implementations, there may be one or more additionalpresentation locations 305. The dedicated presentation location 305, asdiscussed below with respect to FIG. 4 , may be a specific locationwhere a user 330 can retrieve an item that is not presented at apresentation location. For example, a user may request a specific itembe retrieved from a storage area. The requested item may be retrievedand presented to the user at the additional presentation location 305for picking by the user.

FIG. 4 is a block diagram illustrating additional details of a materialshandling facility, according to some implementations. The exampleillustrated in FIG. 4 shows a presentation area 400 and adjacent storagearea 410. In addition, the presentation area includes an additionalpresentation location 405 for the delivery and presentation of itemsspecifically requested by the user 430. In this example, the user 430has requested an item 420 that is not already presented at thepresentation area 400. A user request for an item may be provided using,for example, a portable device associated with the user and/or an inputcomponent (e.g., touch-based display, microphone) located within theinventory management system.

Rather than requiring that the user move to another area within thematerials handling facility to retrieve the item (if it is presentedelsewhere), and/or requiring an associate to retrieve the item fromstorage, upon receiving a request from the user for the item, theinventory management system 150, via the network 350, may sendinstructions to a shuttle 440 to retrieve an inventory holder thatcontains the requested item 420 from a storage area and deliver theinventory holder that contains the requested item 420 to the additionalpresentation location 405. When the shuttle 440 arrives at theadditional presentation location 405 with the inventory holder thatcontains the requested item 420, the requested item may be presented tothe user 430 for selection. For example, the additional presentationlocation 405 may include a movable barrier that, once the shuttle 440positions the inventory holder at the additional presentation location405, is removed to provide the user with access to the requested item420.

In some implementations, rather than or in addition to an additionalpresentation location, a requested item may be presented to a user usingany presentation location. For example, if a user requests a specificitem, a currently presented inventory holder containing other items maybe removed from presentation and replaced with the inventory holdercontaining the requested item 420. For example, the size of theinventory holder containing the requested item 420 may be determined andother inventory holders of a similar size that are being presented tothe user may be determined. One of the determined inventory holders maythen be selected, removed from presentation to the user, and thepresentation location utilized to present the inventory holdercontaining the requested item. The removed inventory holder may beselected based on one or more factors. For example, if the user hasalready picked an item from the inventory holder, the inventory holdermay be removed and replaced with the inventory holder containing therequested item 420.

FIG. 5 shows additional components and communication paths betweencomponent types utilized in a materials handling facility 100 with aninventory management system 150 of FIG. 1 , in accordance with someimplementations. A portable device 500 associated with the user 530 maycommunicate and interact with various components over a variety ofcommunication paths. Generally, the inventory management system 150and/or the materials handling facility may include input components 511,output components 501 and computing resource(s) 503. The inputcomponents 511 may include a camera 502, microphone 504, antenna 506,sensor (not shown), scale (not shown), light curtain (not shown), RFIDscanner, visual identifier reader, or any other component that iscapable of receiving input about the surrounding environment, from theuser of the portable device and/or from the portable device. The outputcomponents 501 may include a projector 508, a portable device 510, adisplay 512, an antenna 506, a radio (not shown), speakers 514 and/orany other component that is capable of providing output.

The inventory management system 150 may also include computingresource(s) 503. The computing resource(s) 503 may be local to theenvironment (e.g., materials handling facility), remote from theenvironment, or any combination thereof. Likewise, the computingresource(s) 503 may be configured to communicate over a network 550 withinput components 511, output components 501, shuttles 540, the portabledevice 500 and/or the user 530.

As illustrated, the computing resource(s) 503 may be remote from theenvironment and implemented as one or more servers 503(1), 503(2), . . ., 503(P) and may, in some instances, form a portion of anetwork-accessible computing platform implemented as a computinginfrastructure of processors, storage, software, data access, and soforth that is maintained and accessible by components/devices of theinventory management system 150 via a network 550, such as the Internet.For example, the computing resources 503 may process images to identifya user, determine whether an item has been removed from an inventoryholder (or storage location) or placed into an inventory holder (orstorage location). Likewise, the computing resources 503 may determinerouting paths for shuttles 540 for picking/retrieving inventory holdersfrom storage areas and delivering inventory holders to presentationlocations at presentation areas.

Likewise, in some implementations, the inventory management system 150may communicate via the network 550 with the presentation locations (notshown), sending instructions to display information (e.g., iteminformation) on a display located at the presentation location, engage aconveyor to receive and/or expel an inventory holder, raise/lower abarrier, etc. In some implementations, the presentation locations mayalso include one or more input components (e.g., cameras, scales,touch-based displays) and, when information is received from one or moreof the input components, it may be provided by the presentation locationto the inventory management system 150 via the network 550. For example,the presentation location may include one or more scales and/or pressuresensors configured to detect a change in weight resulting from the pickand/or place of an item from an inventory holder positioned at thepresentation location. When a change in weight is detected, anotification may be sent to the inventory management system 150. Achange in weight may be used to determine if an item has been pickedand/or placed at the presentation location.

The computing resource(s) 503 do not require end-user knowledge of thephysical location and configuration of the system that delivers theservices. Common expressions associated for these remote computingresource(s) 503 include “on-demand computing,” “software as a service(SaaS),” “platform computing,” “network-accessible platform,” “cloudservices,” “data centers,” and so forth.

Each of the servers 503(1)-(P) include a processor 517 and memory 519,which may store or otherwise have access to an inventory managementsystem 150, which may include or provide image processing (e.g., foruser identification and/or item identification), inventory tracking,order processing, shuttle routing, and/or location determination.

The network 550 may utilize wired technologies (e.g., wires, USB, fiberoptic cable, etc.), wireless technologies (e.g., RF, IR, NFC, cellular,satellite, Bluetooth, etc.), or other connection technologies. Thenetwork 550 is representative of any type of communication network,including data and/or voice network, and may be implemented using wiredinfrastructure (e.g., cable, CAT5, fiber optic cable, etc.), a wirelessinfrastructure (e.g., RF, cellular, microwave, satellite, Bluetooth,etc.), and/or other connection technologies.

In some implementations, the inventory management system 150 may beutilized to process images received from multiple material handlingfacilities. For example, the remote computing resources 503 maycommunicate over the network 550 with multiple material handlingfacilities to control picking and/or storage of items and to provideinstructions to shuttles 540, presentation locations, storage locationsand/or users 530.

FIG. 6 depicts a flow diagram of an example predicted items presentationprocess 600, according to some implementations. The process of FIG. 6 ,and each of the other processes discussed herein, may be implemented inhardware, software, or a combination thereof. In the context ofsoftware, the described operations represent computer-executableinstructions stored on one or more computer-readable media that, whenexecuted by one or more processors, perform the recited operations.Generally, computer-executable instructions include routines, programs,objects, components, data structures, and the like that performparticular functions or implement particular abstract data types.

The computer-readable media may include non-transitory computer-readablestorage media, which may include hard drives, floppy diskettes, opticaldisks, CD-ROMs, DVDs, read-only memories (ROMs), random access memories(RAMs), EPROMs, EEPROMs, flash memory, magnetic or optical cards,solid-state memory devices, or other types of storage media suitable forstoring electronic instructions. In addition, in some implementations,the computer-readable media may include a transitory computer-readablesignal (in compressed or uncompressed form). Examples ofcomputer-readable signals, whether modulated using a carrier or not,include, but are not limited to, signals that a computer system hostingor running a computer program can be configured to access, includingsignals downloaded through the Internet or other networks. Finally, theorder in which the operations are described is not intended to beconstrued as a limitation, and any number of the described operationscan be combined in any order and/or in parallel to implement theprocess.

The example process 600 begins by identifying a user, as in 602. Useridentification may be done using a variety of techniques. For example,the user may be identified using facial recognition, based on anidentifier provided by the user, based on an identifier carried by theuser, and/or any combination thereof. In some implementations, the usermay be identified as they near the materials handling facility. Forexample, the user may provide the inventory management system with anidentification of the automobile (e.g., license plate), or the user maybe assigned an identifier that is detected as they approach thematerials handling facility.

Upon user identification, a determination is made as to whether apredicted items list for the user exists, as in 604. In someimplementations, the inventory management system may maintain a useraccount for each user. Each time a user interacts with the materialshandling facility, such as picking items, ordering items, purchasingitems, etc., the inventory management system maintains information aboutthose interactions. Based on the user's actions and/or otherinformation, a determination can be made as to what items are likely ofinterest to the user (predicted items). Other information includes, forexample, items already picked by the user, items that go well with itemspicked by the user, items picked by other users determined to havesimilar picking habits to the picking habits of the user, etc. Forexample, if the user purchases the same five items each time they arriveat the materials handling facility, it can be determined with a highprobability that the user will pick those five items during their nexttrip to the materials handling facility. A predicted items list for auser may be generated at any time. For example, a predicted items listfor a future trip by the user to the materials handling facility may begenerated as they are completing a current trip to the materialshandling facility. The predicted items list may then be provided to theuser for review, modification and/or confirmation at a time prior totheir next trip to the materials handling facility. Likewise, thepredicted items list may be updated based on, for example, a time sincethe user last visited the materials handling facility.

If it is determined that a predicted items list does not exist for theuser, the example process completes, as in 605. However, if it isdetermined that a predicted items list does exist for the user, apresentation area for presentation of predicted items is determined, asin 606. A presentation area may be any location within the materialshandling facility that is available and of a size sufficient to receiveinventory holders containing the predicted items. In someimplementations, the size of the inventory holders that contain thepredicted items may be determined and presentation areas of sufficientsize for presenting the inventory holders of predicted items isdetermined. A presentation area may be considered available if none ofthe presentation locations are currently being used to present predicteditems to another user.

While the examples discussed herein describe a presentation area as agroup of adjacent presentation locations that are used for presentingpredicted items to a single user, in other implementations, apresentation area may not consist of all adjacent presentationlocations. For example, two or more presentation areas, each used forpresenting predicted items to different users, may be intertwined suchthat some of the presentation locations on an aisle correspond to onepresentation area and other presentation locations on the aislecorrespond to a second presentation area. In other implementations,multiple presentation areas may utilize one or more of the samepresentation locations. For example, if two users have one or morepredicted items that are the same, the inventory holder containing thecommon predicted items may be presented at a presentation location thatis associated with each presentation area.

If there are multiple available presentation areas that are availableand of a sufficient size, other factors may be considered in determininga presentation area. For example, the number of predicted items alreadypresented at the presentation area, the total distance that inventoryholders will have to be moved from storage areas (or other areas) topresent each of the predicted items to the user, the location of theuser within the materials handling facility, etc., may be considered inselecting a presentation area for presenting the predicted items to theuser.

After selecting a presentation area, a determination is made as towhether a predicted item is not presented at the presentation area, asin 608. If it is determined that a predicted item is not presented atthe presentation location, instructions are sent to remove an inventoryholder containing a non-predicted item from a presentation location, asin 610. The instructions may be sent to a nearby shuttle instructing theshuttle to move to the presentation location, remove the inventoryholder from the presentation location and transition the inventoryholder to another location (e.g., a storage location, anotherpresentation location).

The example process 600 also causes the predicted item to be positionedat the presentation location, as in 612. For example, instructions maybe sent to a nearby shuttle instructing the shuttle to retrieve aninventory holder (e.g., from a storage location or another presentationlocation) containing the predicted item and transition the inventoryholder to the presentation location. The instructions may also includeinstructions to move the inventory holder from the shuttle to thepresentation location.

After causing the predicted item to be positioned at the presentationlocation, the example process 600 returns to decision block 608 andcontinues. If it is determined at decision block 608 that all predicteditems are presented at the presentation area, a determination is made asto whether any non-predicted items are still presented at thepresentation area, as in 614. If non-predicted items remain, adetermination is made as to whether any supplemental items are to bepresented to the user, as in 616. Supplementary items may be, forexample, promotional items, free samples, items often purchased with thepredicted items, items associated with a coupon maintained by the user,discounted items, etc. If it is determined that a supplementary item isto be presented, instructions are sent to remove an inventory holdercontaining a non-predicted item from a presentation location, as in 618.The instructions may be sent to a nearby shuttle instructing the shuttleto move to the presentation location, remove the inventory holder fromthe presentation location and transition the inventory holder to anotherlocation (e.g., a storage location, another presentation location).

The example process 600 also causes the supplementary item to bepositioned at the presentation location, as in 620. For example,instructions may be sent to a nearby shuttle instructing the shuttle toretrieve an inventory holder (e.g., from a storage location or anotherpresentation location) containing a supplementary item and transitionthe inventory holder to the presentation location. The instructions mayalso include instructions to move the inventory holder from the shuttleto the presentation location.

After positioning a supplemental item at a presentation location withinthe presentation area, the example process 600 returns to block 616 andcontinues, determining if other supplemental items are to be presented.If it is determined that no supplemental items are to be presented, orif it is determined that no non-predicted items are presented at theinventory area, the example process 600 notifies the user that predicteditems are presented at the presentation location for browsing andselection by the user, as in 622. The notification may be sent to theuser by presenting the notification on an output device (e.g., display,projector, speaker, portable device) within visual and/or audible rangeof the user. The notification may also identify the location of thepresentation area, guidance information to assist in routing the user tothe presentation area, an identification of predicted items, etc.

FIG. 7 is a flow diagram of an example dynamic presentation area process700, according to some implementations. The example process 700 beginsby selecting a presentation area for dynamic adjustment, as in 702. Insome implementations, any presentation area within the materialshandling facility may be dynamically adjusted. Likewise, as discussedabove, the presentation area may include one or more presentationlocations.

Upon selecting a presentation area, a determination is made as towhether adjustment criteria exist that are associated with thepresentation area, as in 704. Adjustment criteria may be maintained bythe inventory management system 150 and periodically applied todetermine if the presentation area is to be adjusted. Adjustmentcriteria may be any factor or factors (e.g., business rule) that whensatisfied cause the presentation area to be adjusted. For example,adjustment criteria may consider the time of day, the day of the week,seasons, holidays, weather, users in the materials handling facility,locations of user(s) in the materials handling facility, agreements withvendors, manufacturers, sellers, etc. For example, a vendor (Vendor 1)may have an agreement with the materials handling facility that Vendor 1provided items are to be positioned in the front of the materialshandling facility when the average age of the users located in thematerials handling facility is between 30 years old and 50 years old.

If it is determined that that adjustment criteria exist for the selectedpresentation area, a determination is made as to whether the adjustmentcriteria have been satisfied, as in 706. If the adjustment criteria havebeen satisfied, the inventory holders to be presented at thepresentation area according to the adjustment criteria are retrievedfrom the storage area and/or another presentation area, as in 708.Continuing with the above example, if it is determined that theadjustment criteria are satisfied such that Vendor 1 items are to bepresented at a presentation area in the front of the materials handlingfacility, inventory holders containing the items to be presented arelocated and retrieved by a shuttle(s). In some implementations, theadjustment criteria may identify the specific items to be presented, agroup of items to be presented, a presentation arrangement, a group ofitems from which presented items may be selected, etc.

In addition to retrieving the items to be presented, the inventoryholders currently positioned at the presentation area are removed, as in710. For example, instructions may be sent to remove an inventory holderfrom a presentation location within the presentation area. Theinstructions may be sent to a nearby shuttle instructing the shuttle tomove to the presentation location, remove the inventory holder from thepresentation location and transition the inventory holder to anotherlocation (e.g., a storage location, another presentation location).

The example process 700 also causes the retrieved inventory holder to bepositioned at the presentation location, as in 712. For example,instructions may be sent to the shuttle that retrieved the inventoryholder containing the inventory to be presented (e.g., from a storagelocation or another presentation location) to transition the retrievedinventory holder to the presentation location. The instructions may alsoinclude instructions to move the inventory holder from the shuttle tothe presentation location.

However, if it is determined at decision block 706 that the adjustmentcriteria has not been satisfied, or if it is determined that there is noadjustment criteria associated with the selected presentation location,a determination is made as to whether any currently presented items areto be replenished, as in 714. An item or group of items may bereplenished if, for example, a determined percentage of the items (e.g.,30%) have been picked from the presentation location, if one or more ofthe items has, or will soon, expire, etc. For example, if 30% of item Ahas been picked from an inventory holder positioned at the presentationarea, it may be determined that the item is to be replenished.

If it is determined that an item is to be replenished, a replacementinventory holder containing the item is identified and retrieved fromstorage, as in 716. For example, instructions may be sent to a shuttleto retrieve from a storage area the replacement inventory holder thatcontains the item.

In addition to retrieving a replacement inventory holder, the inventoryholder to be replaced that is currently positioned at the presentationarea is removed, as in 718. For example, instructions may be sent toremove an inventory holder from a presentation location within thepresentation area. The instructions may be sent to a nearby shuttleinstructing the shuttle to move to the presentation location, remove theinventory holder from the presentation location and transition theinventory holder to another location (e.g., a storage location, anotherpresentation location, a replenishment area).

The example process 700 also causes the retrieved replacement inventoryholder to be positioned at the presentation location, as in 720. Forexample, instructions may be sent to the shuttle that retrieved thereplacement inventory holder containing the inventory to be presented(e.g., from a storage location or another presentation location) totransition the retrieved inventory holder to the presentation location.The instructions may also include instructions to move the inventoryholder from the shuttle to the presentation location.

After positioning retrieved inventory holders at a presentation areaaccording to adjustment criteria, positioning a replacement inventoryholder at a presentation area, or if it is determined that there are noitems to be replenished, the example process 700 completes, as in 722.In some implementations, a replacement inventory holder may be used toreplace a depleted and/or expiring item with a same item type, orreplace a depleted and/or expiring item with a different item type.

FIG. 8 is a flow diagram of an example requested item delivery process800, according to some implementations. The example process begins byreceiving a request for an item, as in 802. A user may submit a requestby using the portable device and/or an input component located withinthe materials handling facility. For example, each presentation locationmay include a touch-based display. The user can interact with the touchbased display and request, among other things, delivery of a particularitem.

When a user request for an item is received, the example process 800determines the location of the user within the materials handlingfacility, as in 804. The location of the user may be determined using,for example, image processing to identify the location of the user.Alternatively, or in addition thereto, if the user interacts with aninput device of the materials handling facility, the user's location maybe determined based on the location of the input device utilized by theuser.

Based on the determined location of the user, a determination is made asto whether the requested item is currently presented near the user, asin 806. For example, if the requested item is currently located at apresentation location within a defined distance (e.g., 15 feet) from theuser, it may be determined that the requested item is currentlypresented near the user.

If it is determined that the requested item is not currently presentednear the user, a location of the requested item is determined, as in808. A requested item may be located at a storage location and/or atanother presentation location that is not near the user. Instructionsmay then be sent to a shuttle to retrieve the requested item and routethe requested item to a presentation location that is near the user, asin 812. The presentation location near the user may be any presentationlocation within a defined distance of the user. In some implementations,the presentation location may be a dedicated presentation location thatis utilized only for the presentation of requested items. For example, adedicated presentation location may be positioned at the end of eachaisle and used to present requested items that are retrieved from otherareas within the materials handling facility.

After routing the requested item to a presentation location that is nearthe user or after determining that the item is already presented at apresentation location that is near the user, the example process 800 mayprovide a notification to the user that the requested item is availablefor selection, as in 814. The notification may identify the location ofthe presentation location and/or provide guidance to route the user tothe presentation location of the requested item. The notification may beprovided to the user via any output device (e.g., portable device,projector, display, speaker) that is within visual and/or audible rangeof the user.

FIG. 9 is a pictorial diagram of an illustrative implementation of aserver system, such as the remote computing resource 503 (FIG. 5 ), thatmay be used in the implementations described herein. The remotecomputing resource 503 may include a processor 900, such as one or moreredundant processors, a video display adapter 902, a disk drive 904, aninput/output interface 906, a network interface 908, and a memory 912.The processor 900, the video display adapter 902, the disk drive 904,the input/output interface 906, the network interface 908, and thememory 912 may be communicatively coupled to each other by acommunication bus 910.

The video display adapter 902 provides display signals to a localdisplay (not shown in FIG. 9 ) permitting an operator of the remotecomputing resource 503 to monitor and configure operation of the remotecomputing resource 503. The input/output interface 906 likewisecommunicates with external input/output devices not shown in FIG. 9 ,such as a mouse, keyboard, scanner, or other input and output devicesthat can be operated by an operator of the remote computing resource503. The network interface 908 includes hardware, software, or anycombination thereof, to communicate with other computing devices. Forexample, the network interface 908 may be configured to providecommunications between the remote computing resource 503 and othercomputing devices via the network 550, as shown in FIG. 5 .

The memory 912 generally comprises random access memory (RAM), read-onlymemory (ROM), flash memory, and/or other volatile or permanent memory.The memory 912 is shown storing an operating system 914 for controllingthe operation of the remote computing resource 503. A binaryinput/output system (BIOS) 916 for controlling the low-level operationof the remote computing resource 503 is also stored in the memory 912.

The memory 912 additionally stores program code and data for providingnetwork services that allow the inventory management system 150 to trackitems removed from inventory holders, generate predicted items lists,and/or to present predicted items to users. Accordingly, the memory 912may store a browser application 918. The browser application 918comprises computer executable instructions, that, when executed by theprocessor 900, generate or otherwise obtain configurable markupdocuments such as Web pages. The browser application 918 communicateswith a data store manager application 920 to facilitate data exchangebetween the inventory data store 915, the user data store 917 and/or thepredicted items list data store 919.

As used herein, the term “data store” refers to any device orcombination of devices capable of storing, accessing and retrievingdata, which may include any combination and number of data servers,databases, data storage devices and data storage media, in any standard,distributed or clustered environment. The remote computing resource 503can include any appropriate hardware and software for integrating withthe data stores 915, 917, 919 as needed to execute aspects of theinventory management system 150.

The data stores 915, 917, 919 can include several separate data tables,databases or other data storage mechanisms and media for storing datarelating to a particular aspect. For example, the data stores 915, 917,919 illustrated include mechanisms for inventory information, userinformation, etc., which can be used to identify an item removed from astorage location, placed into a storage location, removed from apresentation location and/or placed into a presentation location.

It should be understood that there can be many other aspects that may bestored in the data stores 915, 917, 919. The data stores 915, 917, 919are operable, through logic associated therewith, to receiveinstructions from the remote computing resource 503 and obtain, updateor otherwise process data in response thereto.

The memory 912 may also include the inventory management system 150,discussed above. The inventory management system 150 may be executableby the processor 900 to implement one or more of the functions of theremote computing resource 503. In one implementation, the inventorymanagement system 150 may represent instructions embodied in one or moresoftware programs stored in the memory 912. In another implementation,the inventory management system 150 can represent hardware, softwareinstructions, or a combination thereof.

The remote computing resource 503, in one implementation, is adistributed environment utilizing several computer systems andcomponents that are interconnected via communication links, using one ormore computer networks or direct connections. However, it will beappreciated by those of ordinary skill in the art that such a systemcould operate equally well in a system having fewer or a greater numberof components than are illustrated in FIG. 9 . Thus, the depiction inFIG. 9 should be taken as being illustrative in nature and not limitingto the scope of the disclosure.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described. Rather,the specific features and acts are disclosed as exemplary forms ofimplementing the claims.

What is claimed is:
 1. A method, comprising: receiving, from a userlocated within a materials handling facility, a request for an item; inresponse to receiving the request, determining a location of the userwithin the materials handling facility; determining a presentationlocation that is within a distance of the location of the user at whichthe item is to be presented; causing an inventory holder of a pluralityof inventory holders that includes at least the item to be routed to andpresented at the presentation location; and sending a notification tothe user indicating that the item is available for selection at thepresentation location.
 2. The method of claim 1, wherein causing theinventory holder to be routed to and presented at the presentationlocation further includes: sending an instruction to a shuttle toretrieve the inventory holder from a storage area and route theinventory holder to the presentation location.
 3. The method of claim 1,wherein receiving the request for the item further includes: receiving,from at least one of a portable device of the user or an input componentlocated within the materials handling facility, the request for theitem.
 4. The method of claim 3 wherein the input component is atouch-based display at the presentation location.
 5. The method of claim1, wherein the notification further includes guidance to route the userto the presentation location.
 6. The method of claim 1, furthercomprising: causing a second inventory holder to be removed from thepresentation location.
 7. A system, comprising: one or more processors;and a memory storing program instructions that, when executed by the oneor more processors, cause the one or more processors to at least:receive, from a user, a request for an item; in response to the request,determine a location of the user; cause an inventory holder of aplurality of inventory holders that includes at least the item to berouted to and presented at a presentation location that is within adistance of the location of the user; and send a notification to theuser indicating that the item is available at the presentation location.8. The system of claim 7, wherein the program instructions that causethe inventory holder to be routed to and presented at the presentationlocation further include instructions that, when executed by the one ormore processors, further cause the one or more processors to at least:send an instruction to a shuttle to retrieve the inventory holder from astorage area and route the inventory holder to the presentationlocation.
 9. The system of claim 7, wherein the presentation location isincluded in a plurality of presentation locations at a presentationarea.
 10. The system of claim 9, wherein the program instructions that,when executed by the one or more processors, further cause the one ormore processors to at least: determine, based at least in part on theuser, a second inventory holder of the plurality of inventory holdersthat includes a second item; and cause the second inventory holder to berouted to and presented at a second presentation location of theplurality of presentation locations.
 11. The system of claim 9, whereinthe program instructions that when executed by the one or moreprocessors further cause the one or more processors to at least:determine that a second item located at the presentation area is to bereplenished; cause a second inventory holder that contains the seconditem to be removed from a second presentation location of the pluralityof presentation locations; and cause a third inventory holder to berouted to and presented at the second presentation location of thepresentation area.
 12. The system of claim 7, wherein the programinstructions that, when executed by the one or more processors, furthercause the one or more processors to at least: determine, based at leastin part on the user, an adjustment criteria; determine, based at leastin part on the adjustment criteria, a second inventory holder that is tobe positioned and a second presentation location and presented to theuser, wherein the presentation location and the second presentationlocation are included in a plurality of presentation locations of apresentation area; cause a third inventory holder to be removed from thesecond presentation location; and cause the second inventory holder tobe routed to and presented at the second presentation location.
 13. Thesystem of claim 7, wherein the program instructions that, when executedby the one or more processors, further cause the one or more processorsto at least: cause a second inventory holder to be removed from thepresentation location.
 14. The system of claim 7, wherein the programinstructions that cause the inventory holder to be routed to andpresented at the presentation location further include instructionsthat, when executed by the one or more processors, further cause the oneor more processors to at least: send a first instruction to a firstshuttle to remove a second inventory holder from the presentationlocation; and send a second instruction to a second shuttle to retrievethe inventory holder from a storage area and route the inventory holderto the presentation location.
 15. A computer-implemented method,comprising: receiving, from a user located within a materials handlingfacility, a request for an item; determining a presentation location atwhich the item is to be presented; sending an instruction to a shuttlethat causes the shuttle to route an inventory holder of a plurality ofinventory holders that includes at least the item to the presentationlocation; and sending a notification to the user indicating that theitem is available at the presentation location.
 16. Thecomputer-implemented method of claim 15, wherein the user may select theitem from the inventory holder while the inventory holder is presentedat the presentation location.
 17. The computer-implemented method ofclaim 15, wherein: receiving the request includes, receiving, from aninput component at the presentation location, the request; anddetermining the presentation location is based at least in part onreceiving the request from the input component.
 18. Thecomputer-implemented method of claim 15, further comprising: sending asecond instruction to a second shuttle that causes the second shuttle toremove a second inventory holder from the presentation location so thatthe inventory holder can be presented at the presentation location. 19.The computer-implemented method of claim 15, further comprising:determining that the user has picked the item from the presentationlocation; and in response to determining that the user has picked theitem, adding an item identifier representative of the item to an itemidentifier list associated with the user.
 20. The computer-implementedmethod of claim 15, further comprising: determining that the user hasplaced a second item at the presentation location; and in response todetermining that the user has placed the second item, removing an itemidentifier representative of the second item from an item identifierlist associated with the user.